home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The Atari Compendium
/
The Atari Compendium (Toad Computers) (1994).iso
/
files
/
umich
/
falcon
/
programm.ing
/
nt_dsp1.lzh
/
NT_DSP1.MSA
/
SORT
/
SORT1.ASM
next >
Wrap
Assembly Source File
|
1989-01-24
|
1KB
|
48 lines
;
; This program originally available on the Motorola DSP bulletin board.
; It is provided under a DISCLAIMER OF WARRANTY available from
; Motorola DSP Operation, 6501 Wm. Cannon Drive W., Austin, Tx., 78735.
;
; Last Update 11 Sep 87 Version 1.0
;
; Sorting by Straight Selection
;
sort1 macro ARRAY,N_ITEMS
sort1 ident 1,1
; reference: Niklaus Writh, "Algorithms + Data Structures = Programs",
; Prentice-Hall, 1976, Program 2.3, page 64
;
; ARRAY = location of an array of numbers in X memory space,
; first item is located at ARRAY.
; N_ITEMS = number of items in the array
;
; register usage:
; r0=(j) r1=(k) r2=(i)
; r4=j' n1=-2 offset
; a=x b
; y0
; uses 4 words of stack
; assumes m0..m2 = $ffff
;
move #N_ITEMS,r4
move #ARRAY,r2
move #-2,n1
do #N_ITEMS-1,_loop2
lua (r2)+,r0
move x:(r2),a y:(r4)-,b
move x:(r0)+,b
move r0,r1
do r4,_loop1
cmp b,a x:(r0)+,b b,y0
tge y0,a r0,r1
_loop1
move x:(r2),y0
move a,x:(r2)+
move y0,x:(r1+n1)
_loop2
endm